import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
// File: /Users/chenweirui/Desktop/dev-project/diary-server/src/diary/diary.entity.ts
// 单日记实体
@Entity()
export class Diary {
  @PrimaryGeneratedColumn()
  id: number;
  //  日记唯一id
  @Column('varchar', { length: 200, default: "" })
  diaryid: string;

  // 日记标题
  @Column('varchar', { length: 200, default: "" })
  title: string;

  // 日记内容
  @Column({ type: 'text', nullable: true })
  content: string;

  // 日记实际时间
  @Column('timestamp', { default: () => 'CURRENT_TIMESTAMP' })
  realtime: Date;

  // 属于某个用户
  @Column()
  userid: string;

  // 日记图片列表
  @Column({ type: 'text', nullable: true })
  imagelist: string;

  // 天气类型
  @Column()
  weathertype: string;

  // 属于某个日记本
  @Column()
  diarybillid: string;

  // 首次插入时间
  @Column('timestamp', { default: () => 'CURRENT_TIMESTAMP' })
  createTime: Date;

  // 更新时间
  @Column('timestamp', { default: () => 'CURRENT_TIMESTAMP', onUpdate: 'CURRENT_TIMESTAMP' })
  updateTime: Date;
}

// 日记本实体
@Entity()
export class DiaryBill {
  @PrimaryGeneratedColumn()
  id: number;

  @Column()
  diarybillid: string;

  // 日记本标题
  @Column('varchar', { length: 200, default: "" })
  title: string;

  // 日记本展示id
  @Column('varchar', { length: 200, default: "" })
  showid: string;

  // todo 日记本自定义logo
  @Column('text')
  showlogo: string;

  // 日记本描述
  @Column('text')
  desc: string;

  // 日记本绑定， todo 日记本可绑定多个日记，并能获取日记本下的所有日记 for chat
  @Column('varchar', { length: 200, default: "" })
  bindbill: string;

  // 属于某个用户
  @Column()
  userid: string;
}
